<?php
class Grupo extends AppModel {

	var $name = 'Grupo';
	var $uses = array("User","Tipogrupo","Tiporol");
	//The Associations below have been created with all possible keys, those that are not needed can be removed
	var $belongsTo = array(
		'Tipogrupo' => array(
			'className' => 'Tipogrupo',
			'foreignKey' => 'tipogrupo_id',
			'conditions' => '',
			'fields' => '',
			'order' => ''
		),
		'Sector' => array(
			'className' => 'Sector',
			'foreignKey' => 'sector_id',
			'conditions' => '',
			'fields' => '',
			'order' => ''
		)
	);
	var $hasMany = array(
		'Rol' => array(
			'className' => 'Rol',
			'foreignKey' => 'grupo_id',
			'dependent' => false,
			'conditions' => '',
			'fields' => '',
			'order' => '',
			'limit' => '',
			'offset' => '',
			'exclusive' => '',
			'finderQuery' => '',
			'counterQuery' => ''
		)
	);
	var $validate = array(
		'tipogrupo_id'=> array(
						'rule' 		=> 	'notEmpty',
						'required' 		=> 	true,
						'message' 	=>	'El identificador de Tipo de Grupo no puede ser núlo.'
					),
		'sector_id'=> array(
						'rule' 		=> 	'notEmpty',
						'required' 		=> 	true,
						'message' 	=>	'El identificador de Tipo de Grupo no puede ser núlo.'
					)			
	);
	function getLider($uid){
		
	}
	function getCountGrid($like){
		if($like!=null)
			$condicion = " AND ".$like." ";
		else $condicion = "";
		$res = $this->query("
			SELECT	count(grupo.id)	as count					
			FROM	grupos grupo, iglesias iglesia, tipogrupos tipogrupo
			WHERE	grupo.iglesia_id = iglesia.id
			AND		grupo.tipogrupo_id = tipogrupo.id
			$condicion");	
		return $res[0][0]["count"];
	}
	function getGruposGrid($orden,$limit,$like){
		if($like!=null)
			$condicion = " AND ".$like." ";
		else $condicion = "";
		$res = $this->query("
			SELECT  grupo.id, grupo.nombre, tipogrupo.nombre, grupo.direccion, grupo.dia_reunion,
					grupo.hora_reunion, grupo.fecha_inicio, grupo.fecha_termino,
					iglesia.nombre, grupo.created, grupo.modified			
			FROM	grupos grupo, tipogrupos tipogrupo, iglesias iglesia 
			WHERE	grupo.tipogrupo_id = tipogrupo.id
			AND		grupo.iglesia_id = iglesia.id
			$condicion
			ORDER BY 	$orden  LIMIT $limit;");
		return $res;
	}
	function esFinalizado($g){
		//grupo sin fecha inicio ni fin, osea no es encuentro, pre, post, escuela etc.
		if($g["Grupo"]["fecha_inicio"] === "0000-00-00 00:00:00"):
			return false;
		else:	
			$ff = $g["Grupo"]["fecha_termino"];
			$hoy = strtotime(date("Y-m-d"));
			$fin = strtotime($ff);
			if($fin>$hoy)
				return false;
			else return true;	
		endif;	
	}
}
?>